const express = require('express') // 引入express包
const app = express() // 创建express实例

// 使用body-parser中间件解析post请求主体
app.use(express.urlencoded({ extended: false }))
app.use(express.json())
const cors = require("cors");
app.use(cors());
// 响应数据的中间件
app.use(function (req, res, next) {
    // status = 0 为成功； status = 1 为失败； 默认将 status 的值设置为 1，方便处理失败的情况
    res.cc = function (err, status = 1) {
        res.send({
            // 状态
            status,
            // 状态描述，判断 err 是 错误对象 还是 字符串
            message: err instanceof Error ? err.message : err,
        })
    }
    next()
})
app.use(express.static('./uploads'))
app.use(express.static('./static'))

const Router = require('./router') // 引入分模块管理的路由
// 路由分模块
app.use(Router) 

// 错误中间件
app.use(function (err, req, res, next) {
    // 未知错误
    return res.cc(err)
})
// 在9999端口上启动后端服务
app.listen(9999, (req, res) => {
    console.log('后端服务端口地址为：localhost://9999');
})